string এবং string.h লাইব্রেরির ব্যবহার

Computer Programming - সি++ প্রোগ্রামিং (C++ Programming) অ্যারে এবং স্ট্রিং |
284
284

স্ট্রিং (string) হলো অক্ষরের একটি ক্রম, যা C++ প্রোগ্রামিংয়ে পাঠ্য তথ্য সংরক্ষণ ও পরিচালনার জন্য ব্যবহৃত হয়। C++ এ স্ট্রিং ব্যবহারের জন্য দুটি প্রধান পদ্ধতি রয়েছে:

  1. C-স্টাইল স্ট্রিং: এটি মূলত C প্রোগ্রামিং থেকে আসে এবং string.h লাইব্রেরি ব্যবহার করে।
  2. C++ স্ট্যান্ডার্ড স্ট্রিং ক্লাস: C++ এর string ক্লাস, যা <string> হেডার ফাইল ব্যবহার করে।

১. C-স্টাইল স্ট্রিং এবং string.h লাইব্রেরি

C-স্টাইল স্ট্রিং মূলত অক্ষরের একটি অ্যারে হিসাবে সংরক্ষিত হয়, এবং এটি \0 (null character) দিয়ে শেষ হয়। C++ এ string.h (বা cstring) লাইব্রেরি C-স্টাইল স্ট্রিং পরিচালনার জন্য বিভিন্ন ফাংশন সরবরাহ করে, যেমন strlen, strcpy, strcmp, ইত্যাদি।

C-স্টাইল স্ট্রিং উদাহরণ

#include <iostream>
#include <cstring> // string.h এর পরিবর্তে cstring ব্যবহার করা হচ্ছে
using namespace std;

int main() {
    char str1[20] = "Hello";
    char str2[20] = "World";

    // স্ট্রিং লম্বা নির্ণয়
    cout << "Length of str1: " << strlen(str1) << endl;

    // স্ট্রিং অনুলিপি করা
    strcpy(str1, str2);
    cout << "After copying, str1: " << str1 << endl;

    // স্ট্রিং মিলানো
    if (strcmp(str1, str2) == 0) {
        cout << "str1 and str2 are equal" << endl;
    } else {
        cout << "str1 and str2 are not equal" << endl;
    }

    return 0;
}

string.h লাইব্রেরির প্রধান ফাংশনসমূহ

ফাংশনকাজ
strlenস্ট্রিংয়ের দৈর্ঘ্য নির্ণয় করে
strcpyএকটি স্ট্রিং অন্য স্ট্রিংয়ে অনুলিপি করে
strcatদুটি স্ট্রিং যোগ করে
strcmpদুটি স্ট্রিং তুলনা করে
strncpyনির্দিষ্ট সংখ্যক অক্ষর একটি স্ট্রিং থেকে অন্য স্ট্রিংয়ে অনুলিপি করে
strstrএকটি স্ট্রিংয়ের মধ্যে অন্য একটি স্ট্রিং অনুসন্ধান করে

উদাহরণ: strlen, strcpy, এবং strcmp এর ব্যবহার

#include <iostream>
#include <cstring>
using namespace std;

int main() {
    char str1[] = "Programming";
    char str2[20];

    // strlen ব্যবহার করে স্ট্রিংয়ের দৈর্ঘ্য নির্ণয়
    cout << "Length of str1: " << strlen(str1) << endl;

    // strcpy ব্যবহার করে স্ট্রিং অনুলিপি
    strcpy(str2, str1);
    cout << "Copied str2: " << str2 << endl;

    // strcmp ব্যবহার করে স্ট্রিং তুলনা
    if (strcmp(str1, str2) == 0) {
        cout << "str1 and str2 are equal." << endl;
    } else {
        cout << "str1 and str2 are not equal." << endl;
    }

    return 0;
}

২. C++ স্ট্যান্ডার্ড string ক্লাস এবং <string> লাইব্রেরি

C++ এ string ক্লাস ব্যবহার করে স্ট্রিং পরিচালনা করা আরও সহজ এবং কার্যকর। এটি <string> হেডার ফাইল অন্তর্ভুক্ত করে ব্যবহৃত হয় এবং C++ এর স্ট্যান্ডার্ড টেমপ্লেট লাইব্রেরির (STL) অংশ।

string ক্লাস উদাহরণ

#include <iostream>
#include <string> // C++ string লাইব্রেরি
using namespace std;

int main() {
    string str1 = "Hello";
    string str2 = "World";

    // স্ট্রিং যোগ করা
    string str3 = str1 + " " + str2;
    cout << "Concatenated string: " << str3 << endl;

    // স্ট্রিং দৈর্ঘ্য
    cout << "Length of str3: " << str3.length() << endl;

    // সাবস্ট্রিং খুঁজে বের করা
    cout << "Substring of str3: " << str3.substr(0, 5) << endl;

    // স্ট্রিং তুলনা
    if (str1 == str2) {
        cout << "str1 and str2 are equal." << endl;
    } else {
        cout << "str1 and str2 are not equal." << endl;
    }

    return 0;
}

C++ string ক্লাসের প্রধান ফাংশনসমূহ

ফাংশনকাজ
lengthস্ট্রিংয়ের দৈর্ঘ্য নির্ণয় করে
sizeস্ট্রিংয়ের দৈর্ঘ্য নির্ণয় করে (length এর সমতুল্য)
emptyস্ট্রিং খালি কিনা তা পরীক্ষা করে
substrসাবস্ট্রিং প্রদান করে
findস্ট্রিংয়ের মধ্যে নির্দিষ্ট সাবস্ট্রিং অনুসন্ধান করে
appendস্ট্রিংয়ের শেষে আরও স্ট্রিং যোগ করে
compareদুটি স্ট্রিং তুলনা করে
clearস্ট্রিং খালি করে
replaceস্ট্রিংয়ের নির্দিষ্ট অংশ প্রতিস্থাপন করে

উদাহরণ: length, substr, এবং find এর ব্যবহার

#include <iostream>
#include <string>
using namespace std;

int main() {
    string text = "Welcome to C++ Programming";

    // স্ট্রিং দৈর্ঘ্য
    cout << "Length of text: " << text.length() << endl;

    // সাবস্ট্রিং তৈরি
    string subText = text.substr(11, 3); // "C++" অংশটি খুঁজে বের করে
    cout << "Substring: " << subText << endl;

    // স্ট্রিংয়ের মধ্যে নির্দিষ্ট শব্দ খোঁজা
    size_t position = text.find("C++");
    if (position != string::npos) {
        cout << "'C++' found at position: " << position << endl;
    } else {
        cout << "'C++' not found." << endl;
    }

    return 0;
}

বর্ণনা:

  • text.length(): স্ট্রিংয়ের দৈর্ঘ্য নির্ধারণ করে।
  • text.substr(11, 3): text স্ট্রিং থেকে ১১ নম্বর অবস্থান থেকে ৩টি অক্ষরের সাবস্ট্রিং খুঁজে বের করে।
  • text.find("C++"): text স্ট্রিংয়ের মধ্যে "C++" শব্দটি অনুসন্ধান করে।

C-স্টাইল স্ট্রিং বনাম C++ string ক্লাস

বৈশিষ্ট্যC-স্টাইল স্ট্রিং (string.h)C++ string ক্লাস
ঘোষণার ধরনক্যারেক্টার অ্যারের উপর ভিত্তি করেstring ক্লাস অবজেক্ট
কার্যকারিতাসীমিত কার্যকারিতাবিভিন্ন ধরনের কার্যকরী ফাংশন প্রদান
পরিচালনাম্যানুয়াল অপারেশন প্রয়োজনস্ট্যান্ডার্ড লাইব্রেরির মাধ্যমে সহজ
ব্যবহারিক ক্ষেত্রেসি এবং কমপ্যাটিবিলিটির জন্যC++ প্রোগ্রামিংয়ে আরও সুবিধাজনক

সারসংক্ষেপ

  • C-স্টাইল স্ট্রিং string.h বা cstring লাইব্রেরি ব্যবহার করে এবং ক্যারেক্টার অ্যারের উপর ভিত্তি করে তৈরি।
  • C++ string ক্লাস C++ এ স্ট্রিং ব্যবহারের জন্য আরও সুবিধাজনক এবং <string> হেডার ফাইল অন্তর্ভুক্ত করে।
  • C++ এর string ক্লাস ব্যবহার করে স্ট্রিং পরিচালনা করা সহজ এবং স্ট্রিং নিয়ে কাজ করার জন্য অনেক ফাংশন রয়েছে, যা প্রোগ্রামিংকে আরও কার্যকর এবং সহজ করে তোলে।

C++ প্রোগ্রামিংয়ে স্ট্রিং নিয়ে কাজ করার সময় সাধারণত C++ string ক্লাস ব্যবহারের পরামর্শ দেওয়া হয়, কারণ এটি আরো সুবিধাজনক এবং আধুনিক প্রোগ্রামিং পদ্ধতিতে বেশি কার্যকর।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion